package org.fujay.commons.langchain4j.server;

import dev.langchain4j.service.*;

/**
 * @author slm
 * @description Ai 服务接口
 */

public interface AiAssistant {

    /**
     * @author sunliming
     * @description 基础LLM
     */
    @SystemMessage("{{prompt}}")
    TokenStream streamChat(@UserMessage String prompt, @V("prompt") String systemPrompt);

    /**
     * @author sunliming
     * @description 带记忆的LLM
     */
    @SystemMessage("{{prompt}}")
    TokenStream streamChatWithMemory(@UserMessage String prompt, @MemoryId String memoryId, @V("prompt") String systemPrompt);

    /**
     * @author sunliming
     * @description
     */
    @SystemMessage("{{prompt}}")
    String chat(@UserMessage String prompt);

}
